/*
Copyright (C) 2001, 2010 United States Government
as represented by the Administrator of the
National Aeronautics and Space Administration.
All Rights Reserved.
*/

package gov.nasa.worldwind.util.xml;

import gov.nasa.worldwind.util.xml.*;

import javax.xml.stream.*;
import javax.xml.stream.events.XMLEvent;

/**
 * @author tag
 * @version $Id: XMLEventParserContext.java 13107 2010-02-06 08:25:24Z tgaskins $
 */
public interface XMLEventParserContext
{
    XMLEventReader getEventReader();

    XMLEventParser getParser(XMLEvent event);

    boolean isStartElement(XMLEvent event, String elementName);

    boolean isEndElement(XMLEvent event, XMLEvent startElement);

    String getCharacters(XMLEvent event);

    StringXMLEventParser getStringParser();

    DoubleXMLEventParser getDoubleParser();

    void registerParser(XMLEventParser parser, String localName);

    void unregisterParser(XMLEventParser parser);

    XMLEventParser getParser(String localName);

    boolean isStartElement(XMLEvent event);

    boolean hasNext();

    XMLEvent nextEvent() throws XMLStreamException;
}
